/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.sgsmcan.Entidad;

import com.sgsmcan.Exporter.Exporter;
import java.io.Serializable;
import java.sql.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 *
 * @author David
 */
@Entity
@Table(name = "SERENO")
public class Sereno extends Exporter implements Serializable {

    @Id
    @GeneratedValue
    @Column(name = "ID")
    Integer id;

    @Column(name = "NOMBRE")
    String nombre;

    @Column(name = "APELLIDO")
    String apellido;

    @Column(name = "DNI")
    String dni;
    
    @Column(name = "fechaNacimiento")
    Date fechaNacimiento;

    @Column(name = "DIRECCION")
    String direccion;
    
    @Column(name = "CODUBIGEO")
    Integer codigoUbigeo;

    @Column(name = "CORREO")
    String correo;

    @Column(name = "FOTO")
    String foto;

    @Column(name = "TELEFONO")
    String telefono;

    @Column(name = "CELULAR")
    String celular;
    
    @Column(name = "PESO")
    Double peso;
    
    @Column(name = "TALLA")
    Double talla;

    @Column(name = "ESTADO", insertable = false)
    Boolean estado;

    @OneToMany(fetch = FetchType.LAZY, mappedBy = "spk.sereno", cascade = CascadeType.ALL)
    private Set<SerenoPerro> serenosperros = new HashSet<SerenoPerro>(0);

    public Sereno() {
    }

    public Sereno(Integer id, String nombre, String apellido, String dni, String direccion, String correo, String foto, String telefono, String celular, Boolean estado) {
        this.id = id;
        this.nombre = nombre;
        this.apellido = apellido;
        this.dni = dni;
        this.direccion = direccion;
        this.correo = correo;
        this.foto = foto;
        this.telefono = telefono;
        this.celular = celular;
        this.estado = estado;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getApellido() {
        return apellido;
    }

    public void setApellido(String apellido) {
        this.apellido = apellido;
    }

    public String getDni() {
        return dni;
    }

    public void setDni(String dni) {
        this.dni = dni;
    }

    public String getDireccion() {
        return direccion;
    }

    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }

    public String getCorreo() {
        return correo;
    }

    public void setCorreo(String correo) {
        this.correo = correo;
    }

    public String getFoto() {
        return foto;
    }

    public void setFoto(String foto) {
        this.foto = foto;
    }

    public String getTelefono() {
        return telefono;
    }

    public void setTelefono(String telefono) {
        this.telefono = telefono;
    }

    public String getCelular() {
        return celular;
    }

    public void setCelular(String celular) {
        this.celular = celular;
    }

    public Boolean isEstado() {
        return estado;
    }

    public void setEstado(Boolean estado) {
        this.estado = estado;
    }

    public Set<SerenoPerro> getSerenosperros() {
        return serenosperros;
    }

    public void setSerenosperros(Set<SerenoPerro> serenosperros) {
        this.serenosperros = serenosperros;
    }

    public Date getFechaNacimiento() {
        return fechaNacimiento;
    }

    public void setFechaNacimiento(Date fechaNacimiento) {
        this.fechaNacimiento = fechaNacimiento;
    }

    public Integer getCodigoUbigeo() {
        return codigoUbigeo;
    }

    public void setCodigoUbigeo(Integer codigoUbigeo) {
        this.codigoUbigeo = codigoUbigeo;
    }

    public Double getPeso() {
        return peso;
    }

    public void setPeso(Double peso) {
        this.peso = peso;
    }

    public Double getTalla() {
        return talla;
    }

    public void setTalla(Double talla) {
        this.talla = talla;
    }

    @Override
    public String[] getDatos() {
        return new String[]{""+this.id,this.nombre,this.apellido,this.dni,
            this.telefono,this.celular,""+this.peso,""+this.talla,this.direccion};
    }

    @Override
    public String[] getTitulos() {
        return new String[]{"id","Nombre","Apellidos","DNI","Teléfono","Celular","Peso (kg)","Talla (m)","Dirección"};
    }
    
}
